package com.itSession.cn.mapper;

import com.itSession.cn.entity.CircleInfo;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @ClassName: CircleInfo
 * @author: hanP
 * @create: 2022-01-10 10:25:40
 */
@Repository
public interface CircleInfoMapper {

	/**
     * 查询所有记录
     *
     * @return 返回集合，没有返回空List
	 * @param jzCircleType
     */
	List<CircleInfo> listAll(String jzCircleType);
    
    
    /**
     * 分页查询所有记录
     *
     * @param map 参数map集合
     * @return 返回集合，没有返回空List
     */
    List<CircleInfo> listByParam(Map<String, Object> map);


	/**
     * 根据主键查询
     *
     * @param jzCircleId 主键
     * @return 返回记录，没有返回null
     */
	CircleInfo getById(Integer jzCircleId);
	
	/**
     * 新增，插入所有字段
     *
     * @param circleInfo 新增的记录
     * @return 返回影响行数
     */
	int insert(CircleInfo circleInfo);
	
	/**
     * 新增，忽略null字段
     *
     * @param circleInfo 新增的记录
     * @return 返回影响行数
     */
	int insertIgnoreNull(CircleInfo circleInfo);
	
	/**
     * 修改，修改所有字段
     *
     * @param circleInfo 修改的记录
     * @return 返回影响行数
     */
	int update(CircleInfo circleInfo);
	
	/**
     * 修改，忽略null字段
     *
     * @param circleInfo 修改的记录
     * @return 返回影响行数
     */
	int updateIgnoreNull(CircleInfo circleInfo);
	
	/**
     * 删除记录
     *
     * @param circleInfo 待删除的记录
     * @return 返回影响行数
     */
	int delete(CircleInfo circleInfo);

	/**
	 * 根据Cirle_Account查询CirlelnfoId
	 * @return
	 */
	CircleInfo findCirleAccountByCirlelnfoId(String CirleAccount);

	List<CircleInfo> listByJzCircleType(Map<String, Object> map);

    List<CircleInfo> listByAccount(String jzCircleAccount);

    List<CircleInfo> listBySearch(Map<String, Object> map);

	List<CircleInfo> listByClassName(Map<String, Object> className);

	List<CircleInfo> listByMajorName(Map<String, Object> majorName);

	List<CircleInfo> listAllData();

}